# 导入模块的方法:
# 方式一: import 模块名
# import my_module
# # 调用: 模块名.方法名()
# my_module.testA(6, 3)
# # 方式二: from 模块名 import 方法名
# # from my_module import testA
# from my_module import *
# # 调用:方法名()
# testA(4,4)
# testB(4,4)
# # 方式三:给模块起别名: 起别名后只能用别名,原来的名字不能用了
# import my_module as my
# # 调用:别名.方法名
# my.testB(5,5)
# # 方式四: 给方法起别名,起别名后只能用别名,原来的名字不能用了
# from my_module import testA as jia
# # 调用:别名()
# jia(2, 2)

# =========================================
# 导模块会把模块里面if __name__ == '__main__'以外的代码执行一遍
# import my_module


# 导入多个模块如果有重名方法,可以给方法起别名
# from my_module import testA as jia
# from my_module2 import testA as cheng
#
# jia(4,4)
# cheng(4,4)

# # 导模块的时候的查询模块或包的路径:
# import sys
# print(sys.path)

# 导模块内的__all__的作用
# from my_module import *
# # from my_module import testB
# testA(1,1)
# testB(1,1)
# =============================================
# 导包
# 方式一: import 包名.模块名
# import my_package1.my1
# # 调用: 包名.模块名.方法名()
# my_package1.my1.fun1()
# # 方式二: from 包名 import 模块名
# from my_package1 import my2
# # 调用: 模块名.方法名
# my2.fun2()
# # 方式三: from 包名.模块名 import 方法名
# from my_package1.my1 import fun1
# # 调用: 方法名()
# fun1()
# from 包名 import * 如果__init__.py文件内没有写__all__默认全导不进来,
# 如果写了__all__里面写了什么模块*只能导入什么模块
# from my_package1 import *
# my2.fun2()

import my_package1.my2